/*
typeof 方法可以检测的类型方式. 
基本数据类型中, null和array 返回的不是自己, 返回的是object. 

null => object
undefined => undefined 
boolean => boolean
number => number 
string => string 
array => object
function => function 
*/

/*
检测数组的方式 Array.isArray()
检测null 的方式. (!exp && typeof exp != "undefined" && exp != 0)   
                或者更简单的方法: exp==null? 
*/
let arr = [1, 2, 3, 4, 5, 6]
let arr1 = {}
let func = () => {}
console.log(Array.isArray(arr) ? 'array': '');
console.log(Array.isArray(arr1));
console.log(typeof arr ); // typeof 只能判断出
console.log(typeof func);




// 只有 null 和 array返回的是 object, 其他都是自己, 就是两个奇怪点的, 其他可以不用看. 
/*
null - object   !exp 判断
undefined - undefined !exp || exp === undefined
boolean - boolean  !exp 
number - number !isNaN()
string - string typeof exp === 'string'

array - object Array.isArray(exp)
function  - function  typeof exp === 'fucntion'
{}   - object  typeof exp === 'object'

*/